package com.xintai.sparepart.purchase.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xintai.common.core.domain.entity.SysUser;
import com.xintai.system.domain.PubJijianerji;
import com.xintai.system.domain.PubWorkshop;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.xintai.common.annotation.Excel;
import com.xintai.common.core.domain.BaseEntity;

/**
 * 采购申请主对象 bei_purchase
 *
 * @author xintai
 * @date 2021-02-20
 */
public class BeiPurchase extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long beiId;

    /** 单据编号 */
    @Excel(name = "单据编号")
    private String beiCode;

    /** 申请人ID */
    @Excel(name = "申请人ID")
    private Long userId;

    /** 申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "维护时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date beiTime;

    /** 备注 */
    @Excel(name = "备注")
    private String beiRemark;

    /** 状态: 审核中、已撤销、已完成、已拒绝、已终止、办理中 */
    @Excel(name = "状态: 审核中、已撤销、已完成、已拒绝、已终止、办理中")
    private String beiState;

    /** 生产线ID */
    @Excel(name = "生产线ID")
    private Long workshopId;

    /** 基建ID */
    @Excel(name = "基建ID")
    private Long jjId;

    /** 紧急程度，正常，急，紧急三个等级 */
    @Excel(name = "紧急程度，正常，急，紧急三个等级")
    private String fRank;

    /** 用户 */
    private SysUser sysUser;

    /** 生产线*/
    private PubWorkshop pubWorkshop;

    /**基建*/
    private PubJijianerji pubJijianerji;

    /** 明细 */
    private List<BeiPurchaseItem> beiPurchaseItems;

    /** 文件*/
    private List<BeiPurchaseFile> beiPurchaseFiles;

    public List<BeiPurchaseFile> getBeiPurchaseFiles() {
        return beiPurchaseFiles;
    }

    public void setBeiPurchaseFiles(List<BeiPurchaseFile> beiPurchaseFiles) {
        this.beiPurchaseFiles = beiPurchaseFiles;
    }

    public List<BeiPurchaseItem> getBeiPurchaseItems() {
        return beiPurchaseItems;
    }

    public void setBeiPurchaseItems(List<BeiPurchaseItem> beiPurchaseItems) {
        this.beiPurchaseItems = beiPurchaseItems;
    }

    public PubJijianerji getPubJijianerji() {
        return pubJijianerji;
    }

    public void setPubJijianerji(PubJijianerji pubJijianerji) {
        this.pubJijianerji = pubJijianerji;
    }

    public SysUser getSysUser() {
        return sysUser;
    }

    public void setSysUser(SysUser sysUser) {
        this.sysUser = sysUser;
    }

    public PubWorkshop getPubWorkshop() {
        return pubWorkshop;
    }

    public void setPubWorkshop(PubWorkshop pubWorkshop) {
        this.pubWorkshop = pubWorkshop;
    }

    public void setBeiId(Long beiId)
    {
        this.beiId = beiId;
    }

    public Long getBeiId()
    {
        return beiId;
    }
    public void setBeiCode(String beiCode)
    {
        this.beiCode = beiCode;
    }

    public String getBeiCode()
    {
        return beiCode;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setBeiTime(Date beiTime)
    {
        this.beiTime = beiTime;
    }

    public Date getBeiTime()
    {
        return beiTime;
    }
    public void setBeiRemark(String beiRemark)
    {
        this.beiRemark = beiRemark;
    }

    public String getBeiRemark()
    {
        return beiRemark;
    }
    public void setBeiState(String beiState)
    {
        this.beiState = beiState;
    }

    public String getBeiState()
    {
        return beiState;
    }
    public void setWorkshopId(Long workshopId)
    {
        this.workshopId = workshopId;
    }

    public Long getWorkshopId()
    {
        return workshopId;
    }
    public void setJjId(Long jjId)
    {
        this.jjId = jjId;
    }

    public Long getJjId()
    {
        return jjId;
    }
    public void setfRank(String fRank)
    {
        this.fRank = fRank;
    }

    public String getfRank()
    {
        return fRank;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("beiId", getBeiId())
                .append("beiCode", getBeiCode())
                .append("userId", getUserId())
                .append("beiTime", getBeiTime())
                .append("beiRemark", getBeiRemark())
                .append("beiState", getBeiState())
                .append("workshopId", getWorkshopId())
                .append("jjId", getJjId())
                .append("fRank", getfRank())
                .append("BeiPurchaseItems",getBeiPurchaseItems())
                .append("BeiPurchaseFiles",getBeiPurchaseFiles())
                .toString();
    }
}
